package com.gccloud.design.service;

import com.gccloud.design.dto.SdOptBranchDto;
import com.gccloud.design.entity.SdOptBranchEntity;
import com.gccloud.starter.core.vo.PageVO;

/**
 * @author wu.yumin
 * @version 1.0.0
 * @Description 流程环节操作配置
 * @date 2021/7/19 10:14
 */
public interface SdOptBranchService {

    /**
     * 新增分支
     *
     * @param entity 流程操作分支实体
     * @return boolean
     */
    boolean addOptBranch(SdOptBranchEntity entity);

    /**
     * 更新分支
     *
     * @param entity 流程操作分支实体
     * @return boolean
     */
    boolean updateOptBranch(SdOptBranchEntity entity);

    /**
     * 删除分支
     *
     * @param ids 分支标识数组
     * @return boolean
     */
    boolean deleteOptBranch(Long[] ids);

    /**
     * 分页查询列表
     *
     * @param searchDTO 查询DTO
     * @return 分页对象
     */
    PageVO<SdOptBranchEntity> queryPageList(SdOptBranchDto searchDTO);

    /**
     * 根据编码查询分支
     *
     * @param branchCode 分支编码
     * @return 流程操作分支实体
     */
    SdOptBranchEntity getByCode(String branchCode);
}
